#include <iostream>
// 10
// class Test
// {
// public:
//     Test() = default; // 生成默认的构造函数
//     Test(int a) : a(a) {}

// private:
//     int a;
// };

class Test
{
public:
    Test() = default; 
    Test(int a)
    {
        this->a = new int(a);
    }
    ~Test()
    {
        delete a;
    }

    // 只允许有单独的对象
    Test(const Test& t) = delete; // 代表删除某个函数 (就没有拷贝构造了)
    Test& operator=(const Test& t) = delete;   
private:
    int *a;
};

int main()
{
    Test t;
    return 0;
}
